# _*_coding:utf-8_*_
"""
按照第一位从大到小往后拼，如果第一位相同，往后顺延
输入：
    [32, 94, 128, 1286, 6, 71]
输出：
    94716321286128  -> 94 71 6 21 1286 128
"""
from functools import cmp_to_key

li = [32, 94, 128, 1286, 6, 71]


def xy_cmp(x, y):
    # 其中1表示x>y，-1,0同理
    if x + y < y + x:
        return 1
    elif x + y > y + x:
        return -1
    else:
        return 0


def number_join(li):
    li = list(map(str, li))  # 将列表里的 数值 转变为 字符串
    li.sort(key=cmp_to_key(xy_cmp))
    return "".join(li)


print(number_join(li))  # 94716321286128
